iT邦幫忙

2021 iThome 鐵人賽

DAY 12
4
Modern Web

曼曼來比較快_Git 版本控制系列 第 12

【Day12】Git 版本控制 - git checkout 移動 head

  • 分享至 

  • xImage
  •  

什麼是 head?

我們在 commit 版本時,其實是將檔案 commit 到一條 branch(分支) 上,而 head 指的就是「現在檔案的 branch 和版本的位置」(白話意思就是現在的檔案是哪條 branch 上的哪個版本)

假設目前 branch 只有 master 這條分支,而 head 位置在 v4 上,但現在 v4 的 code 修改壞了!需要回到上一個版本查看該怎麼做呢?

沒錯!就是把 head 移到 v3 的位置就可以了。

講解完什麼是 head 後,來看看如何用指令移動 head 吧!


首先,想要移動 head 前,我們可以先使用以下指令確認 head 目前的位置在哪裡:

Linux、macOS 用法

cat .git/HEAD

Windows 用法

type .git\HEAD

輸入以上指令後會得到下圖的回饋

這段回饋的意思是 head 現在指到的位置為 master 這條分支,但這樣我們還是不知道指到的版本在哪裡,所以這時就要使用到 git log 這個指令了!

透過 git log 這個指令就可以查詢到之前 commit 的 SHA-1 編號,透過這個編號就可以讓 head 移動到指定的版本了!

git checkout <指定 commit SHA-1>

這樣就從原本的 v2 版切換到 add main.py 版了!

若想要回到最新版本的話,不需要像上面一樣先查詢 commit 的 SHA-1 編號,只要輸入以下指令就可以直接將 head 移動到最新版本囉!

git checkout master

Reference

【冷知識】HEAD 是什麼東西?


上一篇
【Day11】Git 版本控制 - git clone & git pull
下一篇
【Day13】Git 版本控制 - 什麼是 branch?
系列文
曼曼來比較快_Git 版本控制30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言